contextMenu
属性用于为任意视图添加系统风格的上下文菜单。在触控设备上通过长按触发,在使用鼠标的设备上则可通过右键点击触发。开发者可以自定义菜单项内容,并可选地添加一个预览视图,与菜单同时显示。
menuItems
:定义菜单项内容的 VirtualNode
。通常包含多个 Button
组件,并建议使用 Group
元素进行组织,以确保良好的布局与交互。
preview
(可选):一个预览视图,类型为 VirtualNode
。该视图会在上下文菜单旁边展示,用于提供可视化的上下文提示,例如当前操作的对象缩略图或详细信息。
当用户对视图进行长按(触控设备)或右键点击(指针设备)时,系统将展示由 menuItems
定义的上下文菜单;如果提供了 preview
属性,则在菜单旁边显示对应的预览内容。
上述示例中,Text
视图被添加了上下文菜单。在长按该文本时,系统会展示两个操作项:“添加” 和 “删除”,其中“删除”按钮带有破坏性角色样式(destructive
)。
preview
字段为可选项,未提供时仅展示菜单项。Group
对 menuItems
进行结构化组织,以确保良好的交互体验和渲染效果。